package com.design.singleton;

public class InnerClassSingleton {
	
	
	private InnerClassSingleton () {};
	
	
	/**
	 * 供外部调用，输出单例对象
	 * @return
	 */
	public static InnerClassSingleton getInnerClassSingleton() {
		//调用内部类，返回单例
		return InnerClassSingletonHelper.INNER_SINGLETON;
	}
	
	/**
	 * 内部类
	 * 加载：在调用这个类时，JVM才加载这个类的初始化
	 * @author cWX241319
	 *
	 */
	private static class InnerClassSingletonHelper {
		
		/**
		 * 静态常量在类加载时由JVM类加载器进行加载
		 */
		private static final InnerClassSingleton INNER_SINGLETON = new InnerClassSingleton();
	}

}
